import cookies from '@/utils/util.cookies.js';
export default {
  namespaced: true,
  state: {
    // 用户信息
    info: {}
  },
  actions: {
    /**
     * @description 设置用户数据
     * @param {Object} context
     * @param {*} info info
     */
	//异步操作，async 函数返回一个 Promise 对象会成为 then 方法回调函数的参数。
    async set ({ state, dispatch }, info) {
      // store 赋值
      state.info = info;
      // 持久化
      await dispatch('admin/db/set', {
        dbName: 'sys',
        path: 'user.info',
        value: info,
        user: true
      }, { root: true });
    },
    /**
     * @description 从数据库取用户数据
     * @param {Object} context
     */
    async load ({ state, dispatch }) {
      // store 赋值
      state.info = await dispatch('admin/db/get', {
        dbName: 'sys',
        path: 'user.info',
        defaultValue: {},
        user: true
      }, { root: true });
    }
  }
};
